import Vue from 'vue'
import Vuex from 'vuex'

import loginApi from "@/api/login.js"

Vue.use(Vuex)

const store = new Vuex.Store({

	// 全局的属性变量
	state: {
		hasLogin: false,
		userInfo: {},
		statusBarHeight: 0,
		loading: false,
		entering: false, // 对方是否正在输入 不对
		webSocketMessage: {}, //goEasy接收到的消息体
		inviteValue: 0,
		version: '',
	},
	// 放一些同步方
	// 全局的同步方法(执行方式--->$store.commit("方法名"))
	mutations: {
		sum(state, a) {
			console.log("mutations", a)
			console.log("mutations", state)
			return a;
		},
		SET_STATUS_BAR(state, data) {
			state.statusBarHeight = data
		},
		SET_VERSION(state, data) {
			state.version = data
		},
		//tf作为主动控制的参数
		switch_loading(state, tf) {
			if (tf) {
				state.loading = tf;
			} else {
				state.loading = !state.loading
			}
		},
		set_entering(state, data) {
			state.entering = data
		},
		webSocketMessage(state, data) {
			state.webSocketMessage = data
		}
	},
	// 放一些异步的方法
	// 执行actions里面的方法的方式--->this.$store.dispatch("方法名字")
	actions: {
		sum(state, aObj) {
			console.log("actions", aObj)
		},
		async LogindemoMain(state, data) {
			const res = await loginApi.LogindemoMain({
				token: data.token,
				accesstoken: data.accessToken
			})
			console.log('LogindemoMain')
			console.log(res)
			console.log('LogindemoMain')
			context.commit('sum');
			// this.isydLogin = false
			// ydLogin.closeAuthController()
		}
	}
})

export default store
